/**
 * 该公共方法使用方法简要说明
 * 1.在data-XX输入需要传入的参数格式如下
 * 2.data-xx="$...$" 参数值前后$用于辨别是否需要将该参数传入url处 以防传入非预期参数
 * 3.data-page是专门用于填入下面的path路径的键名 
 * 4.使用该公共方法需要将该方法引入对应页面文件内page({})内才会生效哦
 * 5.如果你需要传入的参数恰好前后有$ 那么请慎用该方法 以防有变
 */
const path = {
  // 该路径的键名对应的二级文件夹
  "r2_goodsDetail": "/rember2/goodsDetail/goodsDetail",
  "r1-index" : "/rember1/r1-index/index",
  "r1-goodsDetail" : "/rember1/r1-goodsDetail/goodsDetail",
  "r1-brandlist" : "/rember1/r1-brandlist/brandlist",
  "r1-brandDetail" : "/rember1/r1-brandDetail/brandDetail",
  "r1-topicDetail":"/rember1/r1-topicDetail/topicDetail",
  "r1-search" : "/rember1/r1-search/search"
}
// 用于指向需要带参数的导航
function bindnav(options){
  console.log(options)
  let { id, page } = options.currentTarget.dataset;
  let dataset = options.currentTarget.dataset;
  let getvalue = "?"
  let count = 0;
  // 用于判断参数是否存在
  for (let ind in dataset) {
    let index = ind;  //对象中的每一项的键名
    let value = dataset[ind]; //对象中的每一项的值
    if (value) {
      if (value.indexOf('$') == 0 & value.lastIndexOf('$') == value.length - 1) {
        value = value.slice(1, -1)
        if (count != 0) {
          // count
          getvalue = getvalue + "&" + value;
        } else {
          getvalue = getvalue + index + "=" + value;
          count++;
        }
      } else if (index!="page"){
        console.log("警告！键名" + index + "的键值两端没有带上'$'符号")
      }
    }
  }
  if (!path[page]){
    console.log('你的page变量没有填写哦')
    return;
  }
  wx.navigateTo({
    url: path[page] + getvalue,
  })
}
module.exports = bindnav;